home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 011 / qmodem.arc / QMODEM.DOC
Encoding:
Text File  |  1985-11-05  |  60.9 KB  |  1,305 lines

  1.         Qmodem - Telecommunications Program Version 1.11  Page 1
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.                             Qmodem Operations Manual
  15.                                   Version 1.11
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.                              The Forbin Project Inc.
  26.                                and John Friel III  
  27.                                  6 October 1985
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.              Copyright (c)  The Forbin Project Inc. and John Friel III
  56.              All rights to Qmodem are reserved by the Forbin Project Inc.   
  57.  
  58.  
  59.         Qmodem - Telecommunications Program Version 1.11  Page 2
  60.  
  61.  
  62.              Qmodem  is  a  User Supported program.   I am asking  for  a 
  63.         donation   of  $20.00  for its use.    Those that  donate    will 
  64.         receive   published     announcements    for future  updates   to 
  65.         Qmodem   and other  programs written by the Forbin Project  Inc.
  66.  
  67.              Qmodem    may  be  shared  with   other  people  under   one 
  68.         condition;    that there is  NO CHARGE  for the copy(s).   
  69.  
  70.              A special note to Corporations:  Site licensing is available 
  71.         by arrangement with the author.   Do NOT make multiple copies for 
  72.         use  inside your corporation until you contact The Forbin Project 
  73.         Inc.
  74.  
  75.  
  76.                             The Forbin Project Inc.
  77.                             c/o John Friel III
  78.                             715 Walnut Street
  79.                             Cedar Falls, Iowa  50613
  80.  
  81.  
  82.         Qmodem - Telecommunications Program Version 1.11  Page 3
  83.  
  84.  
  85.                         T A B L E   O F   C O N T E N T S 
  86.  
  87.                                                            Page     
  88.              Description ..................................  4 
  89.              System Requirements ..........................  5
  90.              Starting Qmodem ..............................  6
  91.              
  92.              Commands .....................................  7
  93.  
  94.                   Alt-A Strip / Replace communication table  8
  95.                   Alt-C Clear screen ......................  8
  96.                   Alt-D Dialing directory .................  8
  97.                        C) Clear entry(s) ..................  9
  98.                        D) Dial an entry ...................  9
  99.                        E) Revise the Prefix file .......... 10
  100.                        M) Manual dial a number ............ 11
  101.                        N) Next page of the directory ...... 12 
  102.                        P) Previous page of the directory .. 12
  103.                        R) Revise an entry ................. 12
  104.                        X) Exit back to Qmodem ............. 12
  105.                        #) 0 to 9, shows numbered page ..... 12
  106.                   Alt-E Echo toggle ....................... 12
  107.                   Alt-F Configuration menu ................ 13
  108.                   Alt-G Graphic mode toggle ............... 17
  109.                   Alt-H Hang-up modem ..................... 17
  110.                   Alt-I Information on Qmodem ............. 18
  111.                   Alt-J Function key menu ................. 18
  112.                   Alt-L Log drive ......................... 18
  113.                   Alt-O Sub directory change .............. 18
  114.                   Alt-P Communication parameter menu ...... 19
  115.                   Alt-Q Redial last number ................ 19
  116.                   Alt-R DOS shell ......................... 19
  117.                   Alt-S Split screen toggle ............... 19
  118.                   Alt-T Screen Dump ....................... 20
  119.                   Alt-V View file ......................... 20 
  120.                   Alt-W Disk directory and Xmit time ...... 20
  121.                   Alt-X Exit Qmodem ....................... 21
  122.                   Alt-Y Delete a file ..................... 21
  123.  
  124.                   PgUp     Upload menu .................... 21
  125.                   PgDn     Download menu .................. 23
  126.                   Up-Arrow Scroll back screen ............. 25 
  127.  
  128.  
  129.              Appendix A
  130.  
  131.                   TURBO Pascal Usage ...................... 26
  132.  
  133.              Appendix B
  134.  
  135.                   Dialing Directory description............ 27
  136.  
  137.              Appendix C
  138.  
  139.                   A note from the Forbin Project Inc. ..... 28
  140.  
  141.         Qmodem - Telecommunications Program Version 1.11  Page 4
  142.  
  143.  
  144.         1.0                      D E S C R I P T I O N
  145.  
  146.              Qmodem  is  a modem communications program.   It  can  store 
  147.         many phone numbers in a personal directory for later recall.   It 
  148.         will  handle a variety of modems connected to the PC.    Transfer  
  149.         files  to  other  computers using either XON  /  XOFF    or   the   
  150.         ever  popular  XMODEM  protocols.    The  program    was  written   
  151.         using   Turbo   Pascal   from   Borland International.
  152.  
  153.         Qmodem - Telecommunications Program Version 1.11  Page 5
  154.  
  155.  
  156.         1.1           S Y S T E M   R E Q U I R E M E N T S
  157.  
  158.  
  159.              Qmodem  requires an IBM PC or close compatible with 192K,  a 
  160.         Color/Graphics or Monochrome card and monitor,  and a serial port 
  161.         and modem.   
  162.  
  163.              It should be noted here, that Qmodem sometimes does not work 
  164.         on a PC when other background software is running.   I have heard 
  165.         a  few  horror stories where a screen clock routine  caused   all  
  166.         sorts of problems with the serial port.   
  167.  
  168.         Qmodem - Telecommunications Program Version 1.11  Page 6
  169.  
  170.  
  171.         1.2                S T A R T I N G   Q M O D E M
  172.  
  173.              Throughout   the  documentation,   you  may  run  into   the 
  174.         characters [RETURN] and <cr>.   These represent the return key on 
  175.         the keyboard.  If you see these in the text, press the return key 
  176.         rather than typing in the string.
  177.  
  178.              Qmodem   is started by entering  "Qmodem [RETURN]" from  the 
  179.         DOS prompt like the following.
  180.  
  181.                   A>Qmodem [RETURN]
  182.           
  183.              Please read the opening screen carefully.   Press any key to 
  184.         continue on into Qmodem.   At the top of the next screen,  Qmodem 
  185.         displays  the version logo and what  type of display card you are 
  186.         using.  Immediately after the logo,  Qmodem looks  for 6 files on 
  187.         the  disk as follows:      
  188.  
  189.              QMODEM.CNF - the  configuration  file.     
  190.              QMODEM.KEY - the function key file.
  191.              QMODEM.PRE - the dialing prefix file.
  192.              QMODEM.FON - the dialing directory file.
  193.              QMODEM.XLT - the strip / replace table file.
  194.              QMODEM.WND - the window definition file.
  195.  
  196.              If  you  are just starting and do not have the files  listed 
  197.         above,  Qmodem  will  create  them  for  you.   For  the  dialing 
  198.         directory,  Qmodem  will  initialize  all  of  the  communication 
  199.         parameters by asking you 3 or 4 questions.   
  200.  
  201.         Qmodem - Telecommunications Program Version 1.11  Page 7
  202.  
  203.  
  204.         2.0                      C O M M A N D S
  205.  
  206.              There are currently 28 commands in the Help Menu as follows.
  207.  
  208.                   Alt-A ........ Strip / Replace screen
  209.                   Alt-C ........ Clear screen 
  210.                   Alt-D ........ Dialing directory 
  211.                   Alt-E ........ Echo toggle
  212.                   Alt-F ........ Configuration menu 
  213.                   Alt-G ........ Graphics mode toggle
  214.                   Alt-H ........ Hang-up modem 
  215.                   Alt-I ........ Information on Qmodem
  216.                   Alt-J ........ Function key menu 
  217.                   Alt-L ........ Log drive
  218.                   Alt-O ........ Sub directory change
  219.                   Alt-P ........ Communication parameter menu 
  220.                   Alt-Q ........ Redial last number 
  221.                   Alt-R ........ DOS shell
  222.                   Alt-S ........ Split screen toggle
  223.                   Alt-T ........ Screen Dump
  224.                   Alt-V ........ View file     
  225.                   Alt-W ........ Disk directory and Xmit time 
  226.                   Alt-X ........ Exit Qmodem
  227.                   Alt-Y ........ Delete a file
  228.                   Home ......... Main Menu window
  229.                   PgUp ......... Upload menu 
  230.                   PgDn ......... Download menu 
  231.                   Up-Arrow ..... Scroll back screen 
  232.                   Ctrl-End ..... Sustained BREAK signal
  233.                   Shft-Tab ..... Add Linefeeds toggle
  234.                   Ctrl-PrtSc ... Printer echo toggle
  235.                   Ctrl-Home .... Capture Buffer toggle
  236.  
  237.              All   are   selected  by  pressing  the  corresponding   key 
  238.         combinations on the keyboard. 
  239.  
  240.         Qmodem - Telecommunications Program Version 1.11  Page 8
  241.  
  242.  
  243.         2.01      Alt-A  Strip / Replace table.
  244.  
  245.              Pressing  the  Alt-A  key  combinations  produces  a  screen 
  246.         containing  the  ASCII values 0 through 127 and  their  translate 
  247.         equivalents.   If  Qmodem has created the file,  all entries will 
  248.         have  duplicate  translate values.   This is referred to  as  "No 
  249.         translation performed". 
  250.              
  251.              To  change  (translate)  an  ASCII  value,   you  move   the 
  252.         highlighted  (semi  box  looking thing)  around  the  table  (up,  
  253.         down,  left,  and  right)   to the number you want to   strip  or 
  254.         replace. The number to the left of the dash is the ASCII position  
  255.         in  the  table.    The  number to the right of the dash   is  the 
  256.         character  you  will see when Qmodem receives the number  on  the   
  257.         left. To change the character from the input, press the Space Bar 
  258.         once.  You  will  receive a prompt at the bottom  of  the  screen  
  259.         asking for an integer between 0 and 255.   To strip the character   
  260.         from   the input,  you need only replace the number on the  right 
  261.         with  a 0 (ZERO).  Press [RETURN] to complete the change.   The S 
  262.         key will swap  the table showing the high bit entries 128  - 255.    
  263.         Repeat the procedure to change any of these also.  When you   are 
  264.         finished,  press  the [Esc] key to save the changes (if any)  and 
  265.         return to Qmodem ready.
  266.  
  267.  
  268.         2.02      Alt-C  Clear screen
  269.  
  270.              Not  too  much confusion here I hope.   This will clear  the 
  271.         screen of all data.    If you are in split screen mode, this will 
  272.         only clear the bottom portion of the screen.
  273.             
  274.              In addition to clearing the active screen,  if ANSI graphics 
  275.         mode has been enabled [see Alt-G in this document],  Qmodem  will 
  276.         also  send  the  escape sequences necessary to reset  the  screen 
  277.         colors  you have selected.   For those of you who  call  Bulletin 
  278.         Boards that have those neat color screens,  sometimes, the colors 
  279.         end up different than you would like.  Using Alt-C will reset the 
  280.         color on your screen back to your configuration selections.
  281.  
  282.  
  283.         2.03      Alt-D Dialing directory.
  284.  
  285.              The following is an example of the dialing command prompt at 
  286.         on the screen.
  287.  
  288.  
  289.          * Dial number(s) [ <cr> for Dialing Directory, <Esc> to exit ]
  290.          * 
  291.  
  292.  
  293.              This  is the quick entry prompt.   Here,  you can enter your 
  294.         dialing directory number(s) and skip the dialing directory.   All 
  295.         of  the dialing prefix codes are valid.   For  example,  to  dial 
  296.         directory  number  12,  you would just enter "12<cr>" and  Qmodem 
  297.         will  process the call.  Instructions are given below for dialing 
  298.  
  299.         Qmodem - Telecommunications Program Version 1.11  Page 9
  300.  
  301.  
  302.         up to 10 different numbers in a single command!
  303.  
  304.              With  the use of the optional prefix  codes,  long  distance 
  305.         services  may be utilized to the fullest.   Some services require 
  306.         the prefix codes before the actual number,  another needs it just 
  307.         at the end of the number,  while still others need two codes sent 
  308.         out.  Qmodem can handle all of the above cases with ease.   Refer 
  309.         to the dialing prefix subcommand below for a full explanation  on 
  310.         how to use the prefix codes.
  311.  
  312.             The dialing directory can hold up to 200 names,   numbers and 
  313.         communication   parameters.    This  command  is  also  a   small 
  314.         environment in itself.  From here, you can dial or revise any one 
  315.         of  the  200  numbers,  change any one of the  5  prefix  dialing 
  316.         strings,  enter  a  manual  dial mode or just  page  through  the 
  317.         listing.  There are Nine sub-function as follows:
  318.  
  319.                   C) Clear entry(s)
  320.                   D) Dial an entry
  321.                   E) Revise the Prefix file
  322.                   N) Next page of the directory
  323.                   M) Manual dial a number
  324.                   P) Previous page of the directory
  325.                   R) Revise an entry
  326.                   X) Exit back to Qmodem
  327.                   #) 0 to 9, shows numbered page
  328.  
  329.  
  330.         2.02C     Clear entry(s)
  331.  
  332.              The  familiar  "Number >" shows up again waiting for you  to 
  333.         enter  a number in the range 1 - 200.   Pressing  [RETURN]  exits 
  334.         back to the dialing option menu.   After entering a number, say 1 
  335.         for  example,  Qmodem  asks "Through >".   Here you can  enter  a 
  336.         larger  number if you want to clear a continuous group  or  press 
  337.         [RETURN] and Qmodem will repeat the first number for you.   Last, 
  338.         Qmodem says "Are you sure ?".  To clear them a 'Y' or 'y' must be 
  339.         entered, anything else and Qmodem aborts the clear command.
  340.  
  341.  
  342.         2.02D     Dialing an entry
  343.  
  344.              Again,   the  option  side of the screen will clear and  you 
  345.         will see the prompt "Number >".   Now you have two options:  One,  
  346.         you can enter a number in the range 1 - 200 and press enter,   or 
  347.         Two,  you can prefix the number with one of five characters, [ +,  
  348.         -,  !,  @,  and  #].   This will cause  one of the five  optional 
  349.         prefix  strings  to  be tacked on to the phone  number  from  the 
  350.         entry.   The  following  examples show both good and bad  dialing 
  351.         entries:
  352.  
  353.                   Good ==>       Number >+1
  354.                                  Number >#200
  355.                                  Number >123
  356.  
  357.         Qmodem - Telecommunications Program Version 1.11  Page 10
  358.  
  359.  
  360.                   Bad ===>       Number >a12  (a is not a valid prefix)
  361.                                  Number >201  (number > 200)
  362.                                  Number >$1   ($ is not a valid prefix)
  363.  
  364.              As I mentioned above,  Qmodem now has the capability to dial 
  365.         up to 10 different numbers at one time!  At either of the dialing 
  366.         prompts  (quick dial or from within the dialing  directory),  you 
  367.         can  specify  up  to 10 different entry  numbers  (complete  with 
  368.         prefix  codes) to be cycled through until a connection  has  been 
  369.         established. 
  370.              
  371.              At  the dial prompt,  you are now allowed to enter up to  70 
  372.         characters that define the entries in the phone book.  An example 
  373.         will be helpful now:
  374.  
  375.                   [(dial prompt)] +1, +12, +123, +!199- 50 51,52,53<cr>
  376.              
  377.              Whew!   That  is a lot of dialing commands!    Here is  what 
  378.         happens  next.    Qmodem   parses  (takes apart)  the  string  of 
  379.         characters  and  places  each dialing  command  into  a  separate 
  380.         holding  area.    There are only 10 such holding areas so  Qmodem 
  381.         will  ignore any  extras.   The characters that tell Qmodem  that 
  382.         this   is  a  new number are the comma "," and the  space   "  ".    
  383.         Commas  and spaces can  be next  to  each  other for  clarity  if  
  384.         you   so choose.     As  in  the example,   the first area   will 
  385.         contain the string "+1".   The second will contain "+12",   third 
  386.         "+123",   fourth "+!199-",   fifth "50", sixth has "51",  seventh 
  387.         holds "52" and the eighth contains "53".  As before,   note  that 
  388.         commas  and  spaces  can  be used together  and  are  ignored  by 
  389.         Qmodem.  When Qmodem finds a holding area that has more  that six 
  390.         characters,   it flags it as invalid and goes on to the next one.   
  391.         Remember,   the  maximum  characters  is six for   any  one  dial 
  392.         string!   
  393.  
  394.              Now comes the neat part!   If you enter two or more  entries 
  395.         to dial, Qmodem automatically puts you in Re-Dial mode and starts 
  396.         through  the  list,  one at a time until it makes  a  connection.  
  397.         When Qmodem senses the connection, it removes that entry from the 
  398.         list  so  that when you finish the call,  you can press Alt-Q  to 
  399.         continue with the previously selected numbers.
  400.          
  401.  
  402.         2.02E     Revise Prefix entries
  403.  
  404.              This is much the same as revising a dialing entry.  A window 
  405.         will  open up near the bottom of the screen showing you all 5  of 
  406.         the prefix entries.   Enter the prefix character that corresponds 
  407.         to the string you want to change or press [RETURN].   To clear an 
  408.         entry, press [SPACE] and then [RETURN].  
  409.  
  410.         Qmodem - Telecommunications Program Version 1.11  Page 11
  411.  
  412.  
  413.              As stated earlier in the documentation, the prefix codes can 
  414.         be used in a variety of ways.  Let me set up a couple of examples 
  415.         to  demonstrate the versatility of prefix codes.   I will make  a 
  416.         couple of assumptions: that we are using a Hayes compatible modem 
  417.         and that we use three different long distance services.
  418.  
  419.              Here are the Prefix code strings currently stored:
  420.  
  421.              +) ,,,1234567
  422.              -) 1
  423.              !) 123-4567,,,1234567
  424.              @) 9,,
  425.              #) 999-9999,,,1234
  426.  
  427.              Let's  say we are using the type of service that  needs  the 
  428.         special  codes  at the beginning of the call.   We want  to  call 
  429.         number  12  in  the directory.  The correct  entry  to  the  dial 
  430.         subcommand  would  be "!12".   The resulting command sent to  the 
  431.         modem  would be:      ATDT999-9999,,,1234319 266  8086<cr>.   The 
  432.         commas  used in the prefix codes are assumed to be the default  2 
  433.         second delay used by most Hayes compatible modems.   If you use a 
  434.         long distance system,  you will have to experiment with how  many 
  435.         commas you need to make a successful call.
  436.  
  437.              In the second scenario,  the service in use needs a password 
  438.         at  the end of the long distance number.   So,  to dial number 12 
  439.         again,  use  the  command "12+".   This will send  the  following 
  440.         string to the modem:   ATDT319 266 8086,,,1234567<cr>.
  441.  
  442.              And  last but not least,  a service that uses both types  of 
  443.         passwords.   To make things seem worse,  we are going to make the 
  444.         call at work using the PBX exchange.   This way,  I can make full 
  445.         use of three prefix codes at the same time.   Once again, we will 
  446.         dial  12  from  the  directory.   The dialing  command  would  be 
  447.         "@!12+".   
  448.  
  449.              The  string  sent to the modem would  be  as  follows:    
  450.                   
  451.                 ATDT9,999-9999,,,1234319 266 8086,,,,1234567
  452.  
  453.              Of  course,  this  string is 45 characters and  most  modems 
  454.         limit the input  to  40.    Be careful not to exceed the   limit!   
  455.         Take  out unnecessary spaces and commas to fit.
  456.  
  457.  
  458.         2.02M     Manual dial
  459.  
  460.              With  manual  dial,  any combination of numbers and  letters 
  461.         (like  SmartModem(tm)  commands)  can be used.    Note  too  that  
  462.         the  dialing  prefixes  are valid in manual  dial   mode!   Also,  
  463.         after  using manual dial,   the Alt-Q redial will use the  number  
  464.         entered  for  the last manual dial.   This will most likely  save 
  465.         some  typing time  for  those of you that use   strange   dialing  
  466.         combinations.
  467.  
  468.         Qmodem - Telecommunications Program Version 1.11  Page 12
  469.  
  470.  
  471.              I  did  not put a limit on the number of characters  and  or 
  472.         letters  that could be entered in the manual dial.   It is up  to  
  473.         you  to determine how many characters that can be entered  before 
  474.         your modem will stop accepting data.
  475.  
  476.  
  477.         2.02N     Next page
  478.  
  479.              Shows  the next page of the dialing directory unless page 10 
  480.         is already displayed.
  481.  
  482.  
  483.         2.02P     Previous page
  484.  
  485.              Shows the previous page of the dialing directory unless page 
  486.         1 is already displayed.
  487.  
  488.  
  489.         2.02R     Revise an entry
  490.  
  491.              The options side of the screen will clear and a prompt  will 
  492.         say "Number >".  Enter the number of the directory to be changed.  
  493.         Note  that the number to be changed does not have to be displayed 
  494.         for this to work.   Any number between 1 and 200 including 1  and 
  495.         200  will work fine.   
  496.  
  497.              A window will open up in the top middle of the screen.  Each 
  498.         part  of the entry number is displayed,  one part at a time,  and 
  499.         waits  for you to enter something.   If,  for  example,  you  are 
  500.         updating  just the number for a bulletin board,  when the name is 
  501.         displayed, just press [RETURN] to skip to the next entry.  A null 
  502.         entry in the form of [RETURN] at any prompt in the revise  window 
  503.         will NOT change the previous data for that entry. In other words, 
  504.         you  won't have to retype all of the data every time you want  to 
  505.         make a small change.  
  506.  
  507.              When  the  revision is complete,  the window will  disappear  
  508.         and the directory will be updated on disk.  
  509.  
  510.  
  511.         2.02X     Exit dialing directory
  512.  
  513.              This  will make the dialing directory window  disappear  and 
  514.         bring back the main screen just as it was before.
  515.  
  516.  
  517.         2.03      Alt-E Echo toggle
  518.  
  519.              This will turn on and off the Echo feature of Qmodem.   This 
  520.         is  used in case your keyboard strokes are echoed like "HHEELLOO" 
  521.         or not visible at all.
  522.  
  523.         Qmodem - Telecommunications Program Version 1.11  Page 13
  524.  
  525.  
  526.         2.04      Alt-F Configuration menu
  527.  
  528.              The configuration menu has 7 options as follows:
  529.                   
  530.                        1) Screen and Menu colors 
  531.                        2) Window placement
  532.                        3) Communications parameters
  533.                        4) Dial, Redial, and Modem parameters
  534.                        5) Download and Miscellaneous
  535.                        6) Save Configuration file and Exit back to Qmodem
  536.                        7) Exit back to Qmodem
  537.  
  538.  
  539.         2.041     Screen and Menu colors
  540.  
  541.              Qmodem  will  display an example of what  the  screen   will  
  542.         look  like  in use complete with a window displayed.   This  part  
  543.         of  the program  should  be  self explanatory.    The program  is 
  544.         asking  what  colors (if any) you  want to use while in   Qmodem.    
  545.         Initially,  the  normal text color is set to 7 and the background 
  546.         is 0.   The primary menu is 15, the secondary menu color is 7 and 
  547.         the menu background is 0. Notice that to change a color back to 0 
  548.         you  must  enter the number as 16.   Qmodem  will convert the  16 
  549.         to a 0 before it uses it.   
  550.  
  551.              To  change a color,  tap the Enter key until the  cursor  is 
  552.         next to the number you want to change.  Then enter the new value.  
  553.         Qmodem will update the top part of the screen so you can see what 
  554.         it  would look like in real use.   After the last number has been 
  555.         entered (or bypassed by just hitting ENTER), a prompt will appear 
  556.         saying:
  557.  
  558.           Press [SPACE] to redo, any other key to continue...
  559.  
  560.              If you press the [SPACE] bar,  the cursor will go to the top 
  561.         color entry and start over.   This way you can try many different 
  562.         combinations until you find the one you like.  
  563.  
  564.              Note:  the author prefers the default settings as I like  to 
  565.         use a Monochrome monitor for readability.
  566.  
  567.  
  568.         2.042     Window placement
  569.  
  570.              This  is where you can customize Qmodem as far as where  you 
  571.         would  like the windows to be placed.  There are only  6 keys  to 
  572.         remember.    All  four  arrow  keys  (the numlock key  makes   no 
  573.         difference),    the  [SPACE] bar (to return to  the  main  menu),  
  574.         and   the   [D]  key  (which moves the  window  to  its   Default 
  575.         position). 
  576.  
  577.         Qmodem - Telecommunications Program Version 1.11  Page 14
  578.  
  579.  
  580.              The 12 windows that can be moved are:
  581.  
  582.              1) Command Menu          [Home]
  583.              2) Baud rate selection   Alt-P
  584.              3) Redial                Alt-Q, Alt-1
  585.              4) Log new drive         Alt-L
  586.              5) Upload menu           [PgUp]
  587.              6) Download menu         [PgDn]
  588.              7) Change Directory      Alt-O  (part 1)
  589.              8) Subdirectory list     Alt-O  (part 2)
  590.              9) Directory             Alt-W
  591.             10) File delete           Alt-Y
  592.             11) Exit                  Alt-X
  593.             12) XOFF message          (Always active)
  594.  
  595.                 Make sure that you don't cover #7 up with #8!
  596.  
  597.              Enter the number of the window you would like to move.   The 
  598.         screen will clear and the window will appear.  use the arrow keys 
  599.         to move the window around on the screen.   If Qmodem  beeps,  you 
  600.         are  at the edge and cannot move the window in that direction any 
  601.         more.   Pressing  the  "D" key will put the window  back  in  its 
  602.         default  location.   When you are done moving the window  around, 
  603.         press the SPACE bar and the original screen appears.   If you are 
  604.         finished playing with the windows, enter 13 to save the positions 
  605.         and return to the configuration menu.
  606.  
  607.  
  608.         2.043     Communication parameters
  609.  
  610.              This  should explain itself.   The four questions deal  with 
  611.         the  baud rate,  parity,  stop bits and data bits.   Look at  the 
  612.         bottom of each window for additional descriptions.  If you select 
  613.         8 data bits, Qmodem will set the parity to NONE for you.
  614.  
  615.  
  616.         2.044     Dial, Redial and modem parameters
  617.  
  618.              There  are a lot of things to enter in this window,  so read 
  619.         closely!   There are a total of 15 parameters, some may be [Null] 
  620.         meaning no characters, [Space] meaning 1 blank space, or a value.
  621.  
  622.              First  is  the Connect prompt.  This is used in  the  ReDial 
  623.         window  to  tell  Qmodem when a connection  has  been  made.   My  
  624.         MultiTech   224   sends   back  a  message  "CONNECT"   when    a 
  625.         connection has been  made. The Racal-Vadic sends back "ON- LINE".   
  626.         Just  enter whatever you modem returns.   14  characters  maximum 
  627.         here for the prompt.  
  628.  
  629.              The   next  4 parameters have to do with messages from   the 
  630.         modem  to  tell Qmodem to cancel the current  redial  number  and 
  631.         cycle.     Enter   any  4  strings  (14  characters  maximum  and 
  632.         Upper/Lower case  DOES make a difference).   My MultiTech 224 can 
  633.         return  "NO CONNECT" and "BUSY".
  634.  
  635.         Qmodem - Telecommunications Program Version 1.11  Page 15
  636.  
  637.  
  638.              Next is the Cancel Redial Character(s).   Enter a  character 
  639.         or  characters you need to send to the modem to cancel the  call.  
  640.         Most  any  character  will  do and Qmodem  defaults  to  the  "{" 
  641.         character.
  642.  
  643.              Modem  redial delay.    This is the number of seconds  after 
  644.         Qmodem  cycles in redial before it should attempt to  redial  the 
  645.         next  number.   Any value between 1 and 32767 will  work.   Note: 
  646.         32767 seconds is quite a long time!!
  647.  
  648.              Modem dial timeout.   This is the number of seconds of delay 
  649.         before  a redial will cycle and try again.   My recommendation is 
  650.         to set this no lower than 45, use your own good judgment.
  651.  
  652.              Next  is  the  Modem Dial pacing.   This is  the  number  of 
  653.         Milliseconds  Qmodem  pauses between the characters sent  to  the 
  654.         modem.  Most modems can use full speed (0), but some modems, like 
  655.         the Radio Shack's line,  need to be paced (around 20).  I believe 
  656.         the Racal-Vadic modems also need to be paced for accuracy (around 
  657.         10).
  658.  
  659.              Modem Dial prefix. This can  be  any valid dialing string to 
  660.         prefix the number to dial. Control characters can be  entered  if  
  661.         they  are  necessary.  Examples of some dialing commands are:
  662.                                  
  663.                                  AT S11=50 DT
  664.                                  ATDT
  665.                                  ATDP
  666.                                  ^N D "
  667.  
  668.              Modem HangUp string.  This is the command string sent to the 
  669.         modem  to  tell it to hang up.   Two special characters are  used 
  670.         here:  the tilde "~" and the left curly bracket "{".   The  Tilde 
  671.         will  make Qmodem pause 1/2 second while sending the command  and 
  672.         the  left  curly  bracket will cause Qmodem to  send  a  carriage 
  673.         return [ENTER].  Qmodem comes with the default string of:
  674.              
  675.                                   ~~~+++~~~ATH{ 
  676.  
  677.              This  tells  Qmodem to pause for 1 1/2 seconds,  send  three 
  678.         +'s,  pause another 1 1/2 seconds,  send ATH and a [CR].  This is 
  679.         the standard "Hayes" command. 
  680.  
  681.              Next  is  the Comm parameter change message.   This  is  for 
  682.         those  modems that do not automatically adjust to you changes  in 
  683.         baud  rate.   This is the command sent to the modem any time  the 
  684.         baud  rate  changes do your modem can adjust.   Qmodem  comes  by 
  685.         default  with  a  null string.   Some modems  like  the  Cermetek 
  686.         InfoMate  need  a  " ~ ~X~Y" so  it  can  adjust.   Most  "Hayes" 
  687.         compatibles do not need this.
  688.  
  689.              Modem  Comm port.   This is where you tell Qmodem which comm 
  690.         port  your  modem is connected to.   Only  Com1:  and  Com2:  are 
  691.         addressed.
  692.  
  693.         Qmodem - Telecommunications Program Version 1.11  Page 16
  694.  
  695.  
  696.              Next is the Modem Ctrl Character.   Here again, this is only 
  697.         for those special condition modems like the PCjr internal.  These 
  698.         modems  are always in command mode and listen for  their  command 
  699.         character.   During  an  Xmodem Upload,  they would trap all  the 
  700.         "^N"s and you would always get errors like "Short  Block".   This 
  701.         is  used  to counteract the missing character by sending  two  of 
  702.         them.   The  PCjr  internal  manual  says that  if  two  ^Ns  are 
  703.         received,  it is interpreted as one and gets sent out.   If  your 
  704.         modem is NOT one of the special case types, leave this blank.
  705.  
  706.              Last  is  a  Modem Init string of up to 40  characters  that  
  707.         will be  sent  to your modem when Qmodem is started.   Especially  
  708.         you  Sysops  out there will like this as you can put  your  modem 
  709.         back  to  normal after taking a board  down.    All  valid  Modem 
  710.         commands   can be placed here.   The "{" character can be used to 
  711.         string together more than one command.
  712.  
  713.  
  714.         2.045     Download and Miscellaneous
  715.  
  716.              For     the     optional   download    directory     (and/or  
  717.         subdirectory  for  those  with  hard drives!),  you can set up  a 
  718.         drive  and  path  for  all downloads to  go  to.    The  form  is 
  719.         [drive:]\[pathname\pathname...].    If  you  leave  this   blank,  
  720.         Qmodem  will  download to  the  current  directory, wherever  you 
  721.         are when the download is started.   My  preference, because I use 
  722.         a hard drive,   is to set it to  \COMM\DOWNLOAD.    I could  have  
  723.         used  C:\COMM\DOWNLOAD but I'm always  on  the  hard drive when I 
  724.         start  Qmodem.   The benefits of this could be the use of  a  RAM 
  725.         disk for faster downloads.
  726.  
  727.              The  next entry is for specifying a Screen Dump file.   This 
  728.         is  the  file  where  all your  screen  dumps  get  appended  to.  
  729.         Pressing the Alt-T produces the screen dump.
  730.  
  731.              Next is the Session Capture file.   This file, when enabled, 
  732.         saves  all  characters that come to the screen to  a  file  also.  
  733.         This  works just like the Printer echo,  but goes to a disk  file 
  734.         instead.  Full Drive:\Path\Filename is supported. 
  735.  
  736.              Fourth  in the list is the Add LF question.  If you want  to 
  737.         add  a LF to every CR received when downloading in ASCII mode  or  
  738.         just   straight old talk mode with another terminal,    turn this 
  739.         on with a 'Y' or a 'y'.
  740.  
  741.              Next  is  the ANSI graphics start up  mode.    If  you  want 
  742.         Qmodem to be in ANSI mode,  enter a 'Y' or 'y' here.  This can be 
  743.         toggled with the Alt-G key combo.
  744.  
  745.              Next  is the  Music  toggle.      Some  boards  have   music  
  746.         embedded   inside    their  ANSI  graphic  menus   and   screens.   
  747.         Qmodem  will  play  these  tunes  only it this  is  'Y'  or  'y'.   
  748.         Otherwise,   Qmodem will  edit out  the  music  and help you keep 
  749.         the computer quiet if  you  so choose.
  750.  
  751.         Qmodem - Telecommunications Program Version 1.11  Page 17
  752.  
  753.  
  754.              The  Window  mode.   This  tells Qmodem how to  display  its 
  755.         various windows.  This is only a visual enhancement as far as the 
  756.         operation of Qmodem is concerned.   If you enter a 0, Qmodem will 
  757.         put the window on the screen in a blink of an eye.   If you enter 
  758.         a  1,  then  the MVI process is used.   [MVI stands  for  Maximum 
  759.         Visual Impact and the window will GROW into position. 
  760.  
  761.              [ At this time, I would like to thank Jim Everingham for the 
  762.         fine  window procedures he has given me.   Without  Jim's  window 
  763.         routines, Qmodem would not have those snappy windows. ]
  764.  
  765.              Last in the list is the most confusing parameter.   (I saved 
  766.         the best for last)  Use CTS.   What is CTS you say?   CTS  stands 
  767.         for Clear To Send and is a signal generated by your modem.   This 
  768.         tells  the computer whether or not you modem is ready to  receive 
  769.         characters from your computer.   With Qmodem version 1.11,  a new 
  770.         transfer protocol has been introduced called IMP (Internal  Modem 
  771.         Protocol)  and  it  relies heavily on the CTS  signal  from  your 
  772.         modem.   For  further  discussion of  IMP,  see  Upload/Download.  
  773.         Suffice to say, CTS is required to use IMP.  
  774.  
  775.  
  776.         2.046     Save Configuration and Exit back to Qmodem
  777.  
  778.              That's  right,  It will save the configuration back to  disk 
  779.         and return you to Qmodem's terminal mode.
  780.  
  781.  
  782.         2.047     Exit back to Qmodem
  783.  
  784.              Closes  the configuration window WITHOUT saving the  changed 
  785.         parameters  and  returns to Qmodem  ready mode.    
  786.  
  787.              You   might be wondering,   after you have played with   the 
  788.         Menu colors and the such,  why doesn't the configuration come  up 
  789.         in  color?   That's  because of those that have C/G  boards  with 
  790.         composite  monitors (like me).   This way,  if they screw up  the 
  791.         colors  and  can't read the screen,  the  configuration  menu  is 
  792.         always readable.
  793.  
  794.  
  795.         2.05      Alt-G  Graphics toggle
  796.  
  797.              This  is  used to toggle the display of ANSI  graphics.   It 
  798.         also controls  the  music to be heard if there is any.    To  use  
  799.         ANSI  graphics,   you  MUST have the ANSI.SYS in your  CONFIG.SYS 
  800.         file at boot-up time.   For further questions about ANSI,  please 
  801.         consult your DOS manual.
  802.  
  803.  
  804.         2.06      Alt-H  Hang up the Modem
  805.  
  806.              This  may  do one of two things depending on what  you  have 
  807.         entered in the configuration.   If you have entered "DTR" for the 
  808.         modem hangup string,  Qmodem will toggle the "DTR" signal and the 
  809.  
  810.         Qmodem - Telecommunications Program Version 1.11  Page 18
  811.  
  812.  
  813.         connection will be dropped.   Otherwise,  it sends  out the Modem 
  814.         HangUp string.
  815.  
  816.  
  817.         2.07      Alt-I  Information on Qmodem
  818.  
  819.              This  will  always tell you what version of Qmodem  you  are 
  820.         using,  The day it was compiled, and MY name, John Friel III.  If 
  821.         you  have  any problems with Qmodem,  please send me a card or  a 
  822.         letter and include this information.   This is the only way I can 
  823.         accurately solve the problem.
  824.  
  825.  
  826.         2.08      Alt-J  Function key menu
  827.  
  828.              This  will open up a rather large window with 5  parameters.  
  829.         Straight,  Shifted,  Ctrl,  Alt and Return to Qmodem.   Of course 
  830.         this is only good for the 10 function keys.   Select 1-4 to  view 
  831.         the current definitions for the key group.   If you want to alter 
  832.         any  of the keys,  enter the number to the left of the definition 
  833.         at  the  bottom.   Use the "{" character to  be  substituted  for 
  834.         [RETURN] when the key is used.  Control characters are valid.
  835.  
  836.  
  837.         2.09      Alt-L  Log new drive
  838.  
  839.              This  opens a small window and asks for the drive letter  to 
  840.         become  the default drive.   This works in conjunction  with  the 
  841.         Alt-W  and  downloads if no alternate drive was  defined.   Drive 
  842.         letters  A-F  are valid.    The next version of Qmodem will  have 
  843.         the drive letter restriction lifted.
  844.  
  845.  
  846.         2.10      Alt-O  Change Sub-directories
  847.  
  848.              You  MUST  be  using DOS 2.0 or higher for this  command  to 
  849.         work.  This has to be one of the neater features of Qmodem.  With 
  850.         this command,  not one,  but two windows open up.   The long tall 
  851.         one  on the left of the screen is a listing of valid sub-dirs for 
  852.         the current directory you are in.  if you don't have any sub-dirs 
  853.         or  don't use them,  this would be blank.   the other main window 
  854.         lists  your  current path (if any) and waits for you to  enter  a 
  855.         CHDIR  command.   Any valid CD command can be entered  here,  not 
  856.         just what shows in the left column.  
  857.  
  858.              Examples:
  859.  
  860.              The current sub dir is C:\TURBO\QMODEM and I pressed Alt-O.
  861.              The left column would list  .
  862.                                          ..
  863.                                          TESTING
  864.                                          COLOSSUS
  865.  
  866.              Only 2 optional sub-dirs showed up.   To select TESTING, you 
  867.         only  need enter "testing" in the main window.   No need to  type 
  868.  
  869.         Qmodem - Telecommunications Program Version 1.11  Page 19
  870.  
  871.  
  872.         the whole thing in again.   If you enter something wrong,  Qmodem 
  873.         will  give  you the message "Invalid CHDIR  command.  No  changes 
  874.         made." and the windows will disappear.  On the other hand, Taking 
  875.         the same example as above,  if I wanted to switch to  my optional 
  876.         download  directory,  I could have typed in \COMM\DOWNLOAD to the 
  877.         prompt  and (provided the path was valid) I would then be  at  my 
  878.         download sub-dir.  Then I could do an Alt-W to check things out.
  879.  
  880.              Note too, that if you include the drive specifier with a new 
  881.         path command,  only the path on that drive is changed.   You will 
  882.         not change your current logged drive to that which was specified.  
  883.         This is important to remember,  The only way to change the logged 
  884.         drive is with the Alt-L command.
  885.  
  886.  
  887.         2.11      Alt-P  Communications parameters
  888.  
  889.              You  can  change your communication parameters  "on-the-fly" 
  890.         without  having  you  modem  hang  up.   Just  select  the  right 
  891.         parameters from the list shown. Pressing [RETURN] alone keeps the  
  892.         previous  setting and exits to Qmodem ready.  If one of the  list 
  893.         entries is selected,  the communication parameters   are  altered 
  894.         to reflect the new  choice  before  the window disappears.
  895.  
  896.  
  897.         2.12      Alt-Q  Redial last number
  898.  
  899.              The  last number   dialed  through  the  Alt-D  command  can  
  900.         be  repeatedly dialed until connection is made.    You MUST  have  
  901.         used  the   Alt-D first or you will get the message  "Nothing  to 
  902.         Redial".   
  903.              
  904.              Provided  there  is a number to redial,   Qmodem  shows  the 
  905.         current time redial was entered,  the current retry  number,  the 
  906.         time and the statistics about the number (who and what the number 
  907.         is).   Depending on how you have your modem set up,  specifically 
  908.         the S7 register in the Hayes,  the modem can time out and you get 
  909.         a "* Modem timed out or line busy *" message or the  Redial delay 
  910.         was hit and Qmodem cycles the redial itself.  
  911.  
  912.              Please keep the Redial delay above 45 seconds,  That way you 
  913.         are  assured  of getting at least a busy signal and  not  cycling 
  914.         just  as  the BBS is answering the phone.   
  915.  
  916.  
  917.         2.13      Alt-R  DOS shell
  918.  
  919.              If  there  is  enough memory in your system and  a  copy  of 
  920.         COMMAND.COM is in the current path,   you  can temporarily   drop 
  921.         to DOS and return.   All DOS commands are  then available, should 
  922.         you wish to format a disk for example.   You can NOT  execute any 
  923.         program  that  attaches  itself  to DOS.    SideKick  is  a  good 
  924.         example.  To return to Qmodem,  enter the EXIT command at the DOS 
  925.         prompt.   Remember,  not  all  programs can be executed  in  this 
  926.         fashion,  Qmodem is not designed to be  a  DOS shell.
  927.  
  928.         Qmodem - Telecommunications Program Version 1.11  Page 20
  929.  
  930.  
  931.         2.14       Alt-S  Split screen mode
  932.  
  933.              The  screen  is  divided into two  partitions.   The  bottom 
  934.         partition  has  4 lines and the top has  20  lines.    I  thought 
  935.         there  might  be a need for something like this so here   it  is.   
  936.         Alt-S  is a toggle,  so hitting Alt-S again will drop you out  of  
  937.         split   screen   mode.    This is now  true  split  screen   mode 
  938.         complete  with  a  254  character  buffer.    Pressing  the  <CR> 
  939.         transmits  the buffer.   The keystrokes are kept track on on  the 
  940.         dividing  line.   The  character "{" can be used to substitute  a 
  941.         [CR] in the string.
  942.  
  943.  
  944.         2.15      Alt-T  Screen Dump
  945.  
  946.              This  copies  the  screen  in  its entirety  to  a  file  as 
  947.         specified  in the configuration.   The screen is APPENDed to  the 
  948.         file.
  949.  
  950.  
  951.         2.16      Alt-V  View a file
  952.  
  953.              This has several nice features wrapped into one.  It will do 
  954.         a  selective  directory  search  if wildcards  are  used  in  the 
  955.         filename.  Any number of these can occur until you either enter a 
  956.         valid  filename  or you press [RETURN] for an  invalid  filename.  
  957.         Both  exit back to Qmodem ready.   If you enter a valid filename, 
  958.         you  are then asked what method you would like to view the  file.  
  959.         Options  include 1) Qmodem internal method,  2) DOS TYPE command, 
  960.         and  3)  your  favorite List or Browse  utility.   The  last  two 
  961.         choices depend on how much free memory you have in your  machine.  
  962.         Refer to the DOS Shell command as the last 2 choices use a subset 
  963.         of the DOS Shell.    If you select 3,  the  window clears and you 
  964.         are given a chance to read the  bottom line which states:  "Press 
  965.         [SPACE] to pause, [Esc] to exit.  Bytes queued  = X".   The later 
  966.         part  has to do with the amount of  data coming in while you  are 
  967.         viewing  a  file.    This will let you  know where  you are  with 
  968.         respect to communications.   
  969.  
  970.  
  971.         2.17      Alt-W  Disk directory with Xmit time
  972.  
  973.              This  is just like the DOS version of DIR /p.   Depending on 
  974.         where you are with respect to sub-directories,  all of the normal 
  975.         files are displayed with their respective attributes.  One of the 
  976.         enhancements  I  have made is to add the Transmit times  to  each 
  977.         file.   This Xmit time is is based on your current baud rate  set 
  978.         by  the Alt-P command.   Try changing the baud rate and doing  an 
  979.         Alt-W  and see the Xmit times change.   Don't you wish we all had 
  980.         9600 baud modems??  I do!  
  981.  
  982.              For those of you who have very lengthy directories,  you can 
  983.         press  the [Esc] key and Qmodem will skip the rest of  the  files 
  984.         and  show you the free space on the drive.   That's something DOS 
  985.         won't do.
  986.  
  987.         Qmodem - Telecommunications Program Version 1.11  Page 21
  988.  
  989.  
  990.         2.18      Alt-X  Exiting Qmodem
  991.  
  992.              Pressing Alt-X will open yet another window (do you get  the 
  993.         feeling  that  I  like the use of the windows??) and ask  if  you 
  994.         really want to exit.   Of course,  this is just a safety valve in 
  995.         case  that  you really didn't intend to press Alt-X.   If you  do 
  996.         exit though,   no matter where you are in your hard disk,  Qmodem 
  997.         will  return you to where you started.   
  998.  
  999.  
  1000.         2.19      Alt-Y  Delete a file
  1001.  
  1002.              Yes  Virginia,  there  is a file delete routine  in  Qmodem.  
  1003.         Like  most file delete methods,  Qmodem asks for a valid filename 
  1004.         and  checks to see if that file exist in the  current  directory.  
  1005.         If it does, it asks you again if you really really want to delete 
  1006.         this  file.   This  will be the last chance before you  might  do 
  1007.         something  that can only be regretted later.   Please be  careful 
  1008.         with this one!
  1009.  
  1010.  
  1011.         2.20      PgUp  Upload a file
  1012.  
  1013.              The  PgUp  key will open a window and ask you what  type  of 
  1014.         transfer protocol you would like to use.  The choices are spelled 
  1015.         right  out.    
  1016.  
  1017.                             1)  ASCII  
  1018.                             2)  Xmodem  
  1019.                             3)  Xmodem CRC   
  1020.                             4)  Relaxed Xmodem  
  1021.                             5)  IMP
  1022.                             5)  Exit.   
  1023.  
  1024.              I  personally got tired of  adding  '=X' to all of  my  file 
  1025.         transfers with  PC-Talk.     How many times have  you been  in  a  
  1026.         hurry with an upload or a  download and  forgot  the '=X'?    Did 
  1027.         it screw  things up?     Now  you know why I like  to put  things 
  1028.         in menus. Let me explain a about the different transfer methods.
  1029.  
  1030.              ASCII  Transfer.   When  you select ASCII for  the  transfer 
  1031.         method,  be  aware that line noise could make that  nice  looking 
  1032.         documentation   look  funny  on the other  end.    Enough   said.   
  1033.         The  options  that  immediately show up for the transfer  are  as 
  1034.         follows:
  1035.  
  1036.                       'Enter  the  filename to Transmit >'  
  1037.  
  1038.             Answer this  with  the file you want to send.    Next you get 
  1039.         a list of transfer methods.  1)  Prompted   2)  Time delay  3) No 
  1040.         delay.    Each  one  has  its advantages and disadvantages  based 
  1041.         upon  what kind of computer you are talking to.    Prompted  asks 
  1042.         you  for the character to look for before sending a line of data.   
  1043.         The prompt character cannot be a [SPACE].    Time delay asks  you 
  1044.         to  enter  a  number in Hundredths of a  second  to  wait  before 
  1045.  
  1046.         Qmodem - Telecommunications Program Version 1.11  Page 22
  1047.  
  1048.  
  1049.         sending a line of data.    No delay is  a 'Blast that data' until 
  1050.         it is all sent.  
  1051.  
  1052.              When ASCII mode is selected,  XON / XOFF protocol is also in 
  1053.         effect.   This was added at a very late date to support the  mini 
  1054.         and   mainframe  methods.    At  any time  during  the  transfer,  
  1055.         pressing the PgUp key will  terminate the operation and bring you 
  1056.         to the Qmodem ready mode.
  1057.  
  1058.              XMODEM  Transfer.    There are two methods currently used in 
  1059.         public  domain to compute the validity of data sent  via  XMODEM.  
  1060.         The first method is called checksum.  In checksum, the data block 
  1061.         has  all  of the bytes added together and is then ANDed with  hex 
  1062.         'FF'.   While  checksum is a pretty reliable method  of  insuring 
  1063.         that  the  file  you sent is correct,  errors can  creep  in.   I 
  1064.         believe the rate of error detection is somewhere near 99.6%.  The 
  1065.         second  method  of  error  checking  is  called  CRC,  short  for 
  1066.         Cylindrical  Redundancy  Checking.   This  method  has  an  error 
  1067.         detection rate of 99.9969%.   Unfortunately, not all BBS software 
  1068.         has CRC transfer available.   Check with your local board to find 
  1069.         out which method should be used.  Qmodem is intelligent enough to 
  1070.         figure  out  which is being sent when you  download,  so  if  you 
  1071.         select the wrong one, Qmodem will make sure you get it right.
  1072.  
  1073.              First,  enter  a valid filename to  transmit.   Qmodem  will 
  1074.         check  it out.   Qmodem will wait approximately 20 seconds for  a 
  1075.         NAK to be received to start the transfer.   When the transfer  is 
  1076.         started,  much  useful information is displayed.  Total blocks to 
  1077.         send,  Transmit  time based on the current baud rate,  The  block 
  1078.         being sent,  The current error count, and the time remaining till 
  1079.         completion.  The time remaining till completion is based upon the 
  1080.         number of blocks remaining at any given time.   
  1081.  
  1082.              Lets face it,  You will not be sending your data at the full 
  1083.         baud  rate all of the time with XMODEM.   The time delay for  the 
  1084.         NAK/ACK response slows this down.  Qmodem is fast though and this 
  1085.         will certainly help the phone bills.  Here too, pressing the PgUp 
  1086.         will terminate the transfer if so desired.
  1087.  
  1088.              Relaxed  Xmodem is nothing more than regular Xmodem,  except 
  1089.         the timing has been relaxed by a factor of 10.   In other  words, 
  1090.         it  takes  ten  times  longer  for  the  error  condition  to  be 
  1091.         generated.   CompuServe users will appreciate this.   In fact, it 
  1092.         was  because of the way CompuServe's computers handle (or fail to 
  1093.         handle)  Xmodem that this was added.   Only use "Relaxed  Xmodem" 
  1094.         when  talking  to  CompuServe  and  even  then  use  it  at  your 
  1095.         discretion.   
  1096.  
  1097.              The last one is IMP.   This was completely thought up by  me 
  1098.         and  should  NOT be confused with any other protocol  out  there.  
  1099.         Again,  this  is  Unique to Qmodem v1.11 and up.   IMP  (Internal 
  1100.         Modem  Protocol) is just that,  it relies on the availability  of 
  1101.         modems  to  do  their own data  transmission  checking.   A  good 
  1102.         example  would be the much talked about MNP from  Microcom.   MNP 
  1103.         protocol  can be implemented on the hardware level usually inside 
  1104.  
  1105.         Qmodem - Telecommunications Program Version 1.11  Page 23
  1106.  
  1107.  
  1108.         your modem.  When two modems connect using MNP, the modems do all 
  1109.         the  checking and retransmission necessary for a clean  exchange.  
  1110.         Several  modem manufacturers like ARK (ARK  24K),  Novations  new 
  1111.         2400, MultiTech's new 224 etc. have MNP built in.  
  1112.  
  1113.              But how does Qmodem take advantage of the MNP?   
  1114.  
  1115.              Simple,  it doesn't do anything!   Actually,  the modems are 
  1116.         always verifying the data so there ARE no errors in the transfer.  
  1117.         IMP  is a block oriented transfer method that uses no ACK or  NAK 
  1118.         in the Xmodem sense.   Every block that goes out is guaranteed to 
  1119.         get  there the way it was sent.   So,  IMP does not wait for  the 
  1120.         other  computer to say if the block was correct or not,  that  is 
  1121.         handled by the modems in REAL time.  
  1122.  
  1123.              But why does CTS have to be used?  
  1124.  
  1125.              In my experiences with MNP in the modems,  they use the  CTS 
  1126.         signal  to  temporarily halt the flow to the modem when an  error 
  1127.         does occur.   If they didn't, Qmodem would overflow the modem and 
  1128.         lost data would result, and ultimately, a bad file transfer.  
  1129.  
  1130.              What are the advantages of IMP?
  1131.  
  1132.              In  my  testing  (from Virginia to Iowa,  using  2  ARK  24K 
  1133.         modems),  IMP  showed an impressive 115 blocks a minute  at  2400 
  1134.         baud.   To put that in perspective, normal Xmodem (or Xmodem CRC) 
  1135.         could only get about 88 blocks a minute at 2400 baud.   Remember, 
  1136.         to use IMP, the modems MUST have an internal protocol. 
  1137.  
  1138.  
  1139.         2.21      PgDn  Download a file
  1140.  
  1141.              Here  too,  you get the menu asking for the type of transfer 
  1142.         you want to use.   Enter the appropriate response.   Let me  jump 
  1143.         right into the separate protocols.
  1144.  
  1145.              ASCII.   The  screen  will clear and you will be  told  that 
  1146.         pressing  the  PgDn key will terminate the transfer and save  the 
  1147.         file.   If you start the transfer, but no data has been received, 
  1148.         Qmodem will pretend as if no file was ever sent.   I don't  think 
  1149.         ASCII need much more explanation.
  1150.  
  1151.              XMODEM.   This  is  the new and improved method  of  keeping 
  1152.         track  of the transfer.   All types of errors are kept track  of.  
  1153.         When  the transfer starts,  the download window clears and a list 
  1154.         of  all of the errors are displayed.   Total blocks  received  is 
  1155.         displayed at the top.  The last line of the window shows the most 
  1156.         recent error message and at which block it occurred. 
  1157.  
  1158.              If you receive ten errors in a row,  Qmodem will cancel  the 
  1159.         transfer.  As soon as one block of data is received successfully, 
  1160.         the error count is set to zero.  Qmodem tries to recover from all 
  1161.         data  errors.   You  will note too the speed of which Qmodem  can 
  1162.         recover.    If you are having a problem,  give me a call.   I  am 
  1163.  
  1164.         Qmodem - Telecommunications Program Version 1.11  Page 24
  1165.  
  1166.  
  1167.         willing  to  talk to you about any transfer problem that you  may 
  1168.         encounter.
  1169.              
  1170.              Again,   "Relaxed  Xmodem"  was  designed  for  talking   to 
  1171.         CompuServe.   See  the  description  under  File  Upload  in  the 
  1172.         previous section.
  1173.  
  1174.              For a description of IMP,  see the previous discussion under 
  1175.         Upload protocols.
  1176.  
  1177.              Now  a brief description of the errors that can be  detected 
  1178.         during  an  Xmodem  transfer.   Qmodem keeps track of  each  type 
  1179.         separately.  
  1180.  
  1181.              1)   Long block error  -  Caused usually by line  noise  
  1182.              and this creates extra characters in the transmission. 
  1183.  
  1184.              2)   Short  block error  -  if the line is weak or  you  
  1185.              are recovering from a previous error,  this can result. 
  1186.              It means that Qmodem did not receive enough  characters  
  1187.              to complete the data block.  
  1188.  
  1189.              3)    SOH error -  The first character of every  Xmodem  
  1190.              block  is  the SOH character (01  HEX).  If  the  first 
  1191.              character is not an SOH, Qmodem flags the block as bad. 
  1192.              Chances are that if the first byte is bad, so are a few 
  1193.              others  due  to the fact that line noise  usually  last 
  1194.              long enough to corrupt more that one byte.
  1195.  
  1196.              4)    Complement error -  The data block had two  bytes  
  1197.              in   the   header  to  hold the block  number  that  is   
  1198.              being  transmitted/received.    The  second  of   these  
  1199.              two   is  the complement of the first (first  byte  XOR 
  1200.              255).   This ensures that Qmodem is getting the correct 
  1201.              block.
  1202.  
  1203.              5)    Block # error  -  This is usually caused by  line  
  1204.              noise  too.    The transmitting computer received a NAK 
  1205.              in place  of the  ACK Qmodem sent and resends the block 
  1206.              you just received successfully.    Essentially,  Qmodem  
  1207.              ignores the block  and sends another ACK.
  1208.  
  1209.              6)     Checksum/CRC  error -  Every block  of  data  in 
  1210.              Xmodem   is followed by either a Checksum byte or by  2 
  1211.              CRC  bytes.  CRC  is  a more accurate method  of  error 
  1212.              detection,   but  requires one more byte to be sent  in 
  1213.              every block.  If the Checksum or CRC is wrong,   Qmodem 
  1214.              sends a NAK and discards  the  data.  Again, line noise 
  1215.              is usually the culprit.
  1216.  
  1217.              This  might be an appropriate place to mention that  if  you 
  1218.         have "Call Waiting" with your phone service and someone calls you 
  1219.         while  you are doing an Upload/Download,  you stand a  chance  of 
  1220.         getting  errors.   This may even terminate the transfer depending 
  1221.         on the noise generated.  Be forewarned!
  1222.  
  1223.         Qmodem - Telecommunications Program Version 1.11  Page 25
  1224.  
  1225.  
  1226.         2.22      Up Arrow  Scroll back the screen
  1227.  
  1228.              By  pressing the Up arrow,  you can scroll back through  the 
  1229.         last  250  lines of data that have come to the tube.   The  three 
  1230.         valid keys in scroll back mode are  1) the Up arrow  2) the  Down 
  1231.         arrow, and 3) the [Esc] key.  Pressing the [Esc] will exit scroll 
  1232.         back mode.   This should be pretty much self  explanatory.   When 
  1233.         you  reach the top of the scroll,  you get a message 
  1234.  
  1235.                      '----------  Top of Scroll  ----------'
  1236.  
  1237.                        and  when you are at  the  bottom,  
  1238.  
  1239.                    '----------  Bottom of Scroll  -----------'
  1240.  
  1241.         Qmodem - Telecommunications Program Version 1.11  Page 26
  1242.  
  1243.  
  1244.         3.0                    A P P E N D I X   A
  1245.  
  1246.  
  1247.         3.1       TURBO Pascal Usage
  1248.  
  1249.              TURBO   Pascal  was  used  to  create  Qmodem  for   several 
  1250.         reasons.    The  language  is  easy  to  work  with.   It  allows 
  1251.         structured top-down programming and the  ability  to define  your 
  1252.         own types of variables.    Just as  a side   note,   Qmodem  does  
  1253.         not have a  single  GOTO  statement!  Another  advantage  is  the  
  1254.         creation  of  .COM  files  from  the compiler.   No  more  having  
  1255.         to load BASIC  and  then  run  your program.
  1256.              
  1257.              The   program editor is another big plus to the system.   It 
  1258.         emulates  the WordStar editor almost completely.    TURBO  Pascal 
  1259.         also  lets  you use all of the available memory in  your  system.  
  1260.         Programs can be larger than the available memory by the efficient 
  1261.         use of overlays.   I could go on and on about TURBO  Pascal.   By 
  1262.         the way,  I am not affiliated with Borland International,  just a 
  1263.         very happy customer.
  1264.  
  1265.         Qmodem - Telecommunications Program Version 1.11  Page 27
  1266.  
  1267.  
  1268.         4.0                    A P P E N D I X   B
  1269.  
  1270.  
  1271.         4.2       File structure of the phone directory
  1272.  
  1273.              The   following  is a copy from the source code  which shows 
  1274.         the file structure.
  1275.  
  1276.         Type
  1277.            check_bit        = (even, none, oddd);
  1278.            phone_type       = record
  1279.                                 name                   : string[25];
  1280.                                 number                 : string[14];
  1281.                                 speed, dbits, sbits    : integer;
  1282.                                 parity                 : check_bit;
  1283.                               end;
  1284.  
  1285.         Qmodem - Telecommunications Program Version 1.11  Page 28
  1286.  
  1287.  
  1288.         5.0                    A P P E N D I X   C
  1289.  
  1290.  
  1291.  
  1292.              Please consider the donation of $20.00.   Good software at a  
  1293.         good   price  is hard to come by.    We at  the  Forbin   Project 
  1294.         Inc.  support    the idea of "Shareware" and "Freeware" and  hope 
  1295.         all   of  you  do to.     It's because of you that I am  able  to  
  1296.         bring  you helpful programs like Qmodem.  Thanks again.
  1297.  
  1298.  
  1299.  
  1300.                              The Forbin Project Inc.
  1301.                                  John Friel III
  1302.                                 715 Walnut Street
  1303.                              Cedar Falls, Iowa 50613
  1304.  
  1305.